Route calculation around traffic obstacles using marked diversions

ABSTRACT

A vehicle navigation system ( 100 ; FIG.  1 ) that includes a route calculation module ( 204 ; FIG.  2 ) that is operable to use marked diversions to avoid traffic events. The navigation system includes a simulation module ( 212 ) that is used to simulate traffic events that may occur along a route to a trip destination. A diversion module ( 214 ) is used to calculate a plurality of marked diversions that avoid the traffic events that may occur along the route. If a traffic event occurs along the route, the route calculation module only searches roads that contain a marked diversion to determine an alternative route around the traffic event.

BACKGROUND OF THE INVENTION

1. Technical Field

This invention relates generally to vehicle navigation systems and, moreparticularly, to simplifying route calculation around traffic obstaclesby employing a marked diversion.

2. Related Art

Vehicle navigation systems are becoming increasingly popular in theautomobile industry. A typical vehicle navigation system may include aglobal positioning system (“GPS”) receiver that is mounted somewhere onthe vehicle. The GPS receiver is capable of communicating with asatellite-based global positioning system or other localized positioningsystems. The GPS receiver obtains geographic position information thatis converted into some form of display for the vehicle operatorindicating the position of the vehicle relative to previously determinedreference points or other known landmarks on a given map database. Othersystems and devices may be used to determine the geographic position ofthe vehicle as well.

The typical vehicle navigation system may also include a digital mapdatabase that includes digitized map information that can be processedby a navigation computer designed to handle map-related functions. A mapmatching module may be used to match the position or trajectory measuredby a positioning module to a position associated with a location orroute on a map provided from the digital map database. The positioningmodule may receive its information from the GPS receiver.

The typical vehicle navigation system may also include a human-machineinterface module that provides users with a way to interact with thenavigation system. A visual display is typically used to convert signalsinto a visual image in real time for direct interpretation by the user.As such, displays are used to provide optical driver recommendations,which are usually conveyed by a digital map generated on the display.The display itself is typically an electro-optical device such as aliquid crystal display (“LCD”), a cathode-ray tube (“CRT”) display, anelectroluminescent display (“ELD”), a heads-up display (“HUD”), a plasmadisplay panel (“PDP”), a vacuum fluorescent display (“VFD”), or atouch-screen display.

A route planning module may also be included that is used to plan aroute prior to or during a trip. One commonly used technique is to finda minimum-travel-cost route, which is designed to minimize the amount ofdistance traveled and the costs associated with reaching a predetermineddestination. Other techniques exist that integrate the time one needs ifusing dedicated roads or may use information about traffic congestion onthe route to calculate a route that avoids the traffic congestion. Aroute guidance module is also included that is used to guide the driveralong the route generated by the route planning module. The real time oren-route guidance is typically generated using optical driverrecommendations on the display and may also include acoustic driverrecommendations.

If traffic congestions or other obstacles are reported along a plannedroute, the vehicle navigation system will have to find a deviation tothe planned route that might require the use of roads of minorimportance. For the reason of limited time and memory, it is notpossible for a current routing algorithm to check every road to see ifit is useful for the best alternative route. The standard search onlyconsiders major roads at greater distances from the trip origin anddestination and typically only considers smaller roads near the triporigin and destination. As such, if the best alternative route requiresa local deviation around an obstacle on smaller roads, the vehiclenavigation system should be capable of locating these smaller roads.

Calculation of long trips may be performed by a subdivision of the roadnetwork into functional road classes. In the middle of the journeyrouting techniques as presently implemented on navigation devices onlysearch the most important road connections. These techniques fail tofind a recommendable alternative route. Thus, the navigation device maystick to the route as originally calculated deteriorated by one or moretraffic obstacles or events.

SUMMARY

This invention provides a vehicle navigation system that includes aroute calculation module that is capable of using marked diversions toavoid traffic events or obstacles. The vehicle navigation system mayinclude a navigation control unit that may be connected with a display,a user input device, a digital map database, a positioning system, astorage device and a traffic event notification device. The display maybe used to generate a graphical representation of a road network mapincluded in the digital map database that may be used to guide thedriver along a route to a predetermined destination. In addition, thedisplay may be used as an input device if the display comprises atouch-screen display. The user input device may be used by the driver toenter information about the trip destination as well as other traveloptions or restrictions as desired by the driver of the vehicle.

The digital map database may be located on a CD-Rom, a hard disc storagedevice or any other suitable storage medium. The digital map databasemay contain a digital map of a road network for various geographiclocations as well as other types of data. In particular, the digital mapdatabase may contain information about the functional road classes ofvarious roadways or roads that are contained within the road networkmap. The functional road classes may designate roads in many differentcategories such as, for example, interstates, motorways, toll-ways, citystreets, urban arteries, rural streets, neighborhood streets and soforth. Other road data may also be contained in the digital map databasesuch as a lane number indication and a speed limit indication associatedwith respective roads.

The digital map database may be generated based on geographiccoordinates and a plurality of roadways that are positioned with respectto the geographic coordinates. The process of converting a map into adigital map database may be referred to as a map conversion. A map ofany given area will contain a plurality of roadways that may be used bya driver to travel to a destination. The roadways may be classified inone of the functional road classes set forth above or any other type offunctional road class.

During map conversion a plurality of obstacles or traffic events aresimulated between respective nodes or on segments of the roadways thatare included in the digital map database. For the purpose of thisinvention, nodes or segments may be considered as map elements. Atraffic event simulation module may be used to simulate the trafficevents that may occur between respective nodes or on segments of theroadways. In addition, the traffic event simulation module may be usedto simulate traffic events along multiple segments of the roadways. Oncethe traffic events are simulated, at least one marked diversion may becalculated for each segment of roadway that is contained in the roadnetwork map. As such, a plurality of marked diversions may be generatedthat are associated with a respective segment of the roadway or multiplesegments of the roadway. The marked diversions may be stored in thedigital map database in addition with the other data that is stored inthe digital map database.

A route guidance module located on the vehicle navigation system may beused to guide the driver of the vehicle along the route that has beencalculated by the route calculation module. If the vehicle navigationsystem receives information indicating that a traffic event has occurredalong one or more of the road segments of the route, the routecalculation module may lookup the marked diversion that is associatedwith that particular road segment and guide the driver along analternative route that avoids the traffic event. As set forth above, atleast one marked diversion that is associated with that particular roadsegment or section will have already been calculated by the trafficevent simulation module and stored in the digital map database when thedigital map database is created during the map conversion process.

The memory storage device is used to store various types of data that isused by the vehicle navigation system. Trip origins and tripdestinations may be stored in the memory storage device as well ascalculated routes to trip destinations. In addition, the markeddiversions that are calculated during the map conversion process mayalso be stored in the memory storage device. In other words, the markeddiversions may be stored together with (as part of) the digital map.Various other types of data and information may be stored in the memorystorage device that may be used by the vehicle navigation system.

During map conversion a plurality of marked diversions are generated foreach road segment that is contained in the digital map database. Oncethe route has been calculated, the vehicle navigation system will becapable of identifying each road segment that will be included in theroute. The route calculation module may also be operable to determinethe marked diversions that are associated with the road segments thatare included in the route.

In another example of the invention, the vehicle navigation system mayalso include a traffic event simulation module that is used to simulateany kind of traffic event that may occur along the route that has beencalculated by the route calculation module. The traffic event simulationmodule may divide the route into a plurality of road segments and createsimulated traffic events along each of these road segments. The roadsegments may consist of portions or roadways that lie between two roadintersections or any other designated distance.

A diversion module may also be included for calculating the markeddiversions as a function of the traffic events that are created by thetraffic event simulation module. The marked diversions consist of roadsthat will help the driver of the vehicle avoid the traffic event orobstacle while traveling to the trip destination. The marked diversionsmay consist of any road that is connected to the road segment that isbeing traveled on during the trip to the destination.

The diversion module may use any functional road class to avoid thetraffic event, while the route calculation module will only use majorroads for calculating routes for long trips. As such, the diversionmodule may create marked diversions for local deviations around trafficevents or obstacles that use smaller or local roads to avoid the trafficevent. After the diversion module has determined the marked diversions,they may be stored in the memory storage device for later use by thevehicle navigation system.

If the navigation control unit receives a notification from a trafficevent notification device while traveling to the destination thatdesignates a traffic event ahead at a road segment, the routecalculation module will preferably search the marked diversions that arestored in memory for that particular road segment for a route to avoidthe traffic event. As such, all other roads that may be contained in theroad network map of that particular geographic area will be neglected bythe route calculation module. This saves time and processing power byallowing the navigation control unit to concentrate on marked roadswhile ignoring roads that have not been marked.

Other systems, methods, features and advantages of the invention willbe, or will become, apparent to one with skill in the art uponexamination of the following figures and detailed description. It isintended that all such additional systems, methods, features andadvantages be included within this description, be within the scope ofthe invention, and be protected by the following claims.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention can be better understood with reference to the followingdrawings and description. The components in the figures are notnecessarily to scale, emphasis instead being placed upon illustratingthe principles of the invention. Moreover, in the figures, likereference numerals designate corresponding parts throughout thedifferent views.

FIG. 1 is a block diagram of a vehicle navigation system.

FIG. 2 is a block diagram of application modules located on a navigationcontrol unit in the vehicle navigation system of FIG. 1.

FIG. 3 is an illustrative road network map showing a plurality of roadsegments that are classified in several types of functional roadclasses.

FIG. 4 is an illustrative road network map depicting marked diversionsto traffic events calculated by the diversion module.

FIG. 5 is a flow chart illustrating exemplary process steps performed bythe navigation system when calculating and using marked diversions.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

In FIG. 1, a navigation system 100 with a route calculation module thatis capable of determining marked diversions to avoid traffic obstaclesor events is depicted. As illustrated, the navigation system 100includes a navigation control unit 102 that includes software modulesthat are programmed to calculate routes from points of origin todestinations. Although not specifically illustrated, the navigationcontrol unit 102 may include a Central Processing Unit (“CPU”), a systembus, a Random Access Memory (“RAM”), a Read Only Memory (“ROM”), an I/Oadapter for connecting peripheral devices such as hard disc drives,CD-ROM drives, a communications adapter, and a display adapter. Variouscomputing devices and components may be used to provide thefunctionality of the navigation control unit 102.

The navigation control unit 102 may be connected with a display 104. Inone example, the display 104 may be a touch-screen display thatfunctions as both a display and a user input device. In yet anotherexample, the navigation control unit 102 may be connected with a userinput device 106. The user input device 106 may be a keypad, a personalcomputer, a laptop computer, a pocket PC, a personal digital assistant,a wireless access device or phone, or any other type of device that iscapable of allowing a user of the navigation system 100 to input dataduring operation.

If the user input device 106 communicates wirelessly with the navigationcontrol unit 102, both the navigation control unit 102 and the userinput device 106 may be connected with a wireless communication devicethat is capable of passing the necessary data back and forth between theuser input device 106 and the navigation control unit 102. Someillustrative methods of connecting the user input device 106 with thenavigation control unit 102 that may be used include infrared,Bluetooth, wireless LAN, Universal Serial Bus, fiber optic, direct wire,parallel ports, serial ports, and a network connection in series.

As further illustrated, the navigation control unit 102 may be connectedto a digital map database 108. The digital map database 108 may belocated on a hard disc storage device, a CD-Rom, or any other suitablestorage medium. The digital map database 108 contains a digital map of aroad network for various geographic locations as well as other types ofdata. The digital map database 108 allows the navigation control unit102 to display a map of a geographic location including road networksand can help locate an address or destination using a street address ornearby intersections. In addition, the digital map database 108 can helpcalculate a travel route, can match sensor-detected vehicle trajectorywith a known road network to determine more accurately the actualposition of the vehicle; or provide travel information such as roadclassification data, travel guides, landmarks, hotel and restaurantinformation.

The navigation control unit 102 may also be connected to at least onepositioning system 110. The positioning system 1 10 may be used todetermine the geographic location or coordinates of a vehicle in which aportion of the navigation system 100 is installed. In addition, thepositioning system 110 may determine the trajectory of the vehicle.Positioning involves the determination of the geo-coordinates of thevehicle on the surface of the Earth. Knowing the position and trajectoryof the vehicle allows the navigation control unit 102 to determine theprecise position of the vehicle relative to a road network map. Thenavigation control unit 102 is also able to provide maneuveringinstructions to the driver of the vehicle by knowing the geographiclocation and trajectory of the vehicle.

Three exemplary types of positioning systems 110 that may be usedinclude a stand-alone system, a satellite-based system, and aterrestrial radio based system. A dead reckoning system is anillustrative stand-alone system that may be used by the navigationsystem 100. A satellite-based system that may be used involves equippingthe vehicle with a global positioning system (“GPS”) receiver or anyother type of system that uses satellites to determine geographiclocations. A terrestrial radio based system is a system that usesmeasurement techniques to determine the location of the vehicle. Threecommonly used measurement techniques for terrestrial positioning aretime of arrival (“TOA”), angle of arrival (“AOA”), and time differenceof arrival (“TDOA”). A combination of all of the example positioningsystems discussed above, as well as others, may be used by thenavigation system 100.

A wireless access device 112 may be connected with the navigationcontrol unit 102. In one example, the wireless access device 112 isoperable to connect the navigation control unit 102 with a navigationserver 114. In this example, route calculation and data storage may beaccomplished by the navigation server 114. This embodiment represents aserver-based solution in which a majority of the processing occurs atthe navigation server 114 as opposed to the navigation control unit 102of the vehicle navigation system 100. The navigation control unit 102may log into the navigation server 114 using the wireless access device112. A wireless data transmission protocol (such as WAP) may be used totransmit data and route planning information generated by the navigationserver 114 to the navigation control unit 102.

The navigation control unit 102 may also be connected with a memorystorage device 116. The memory storage device 1 16 may be used to storevarious types of data that is used by the navigation system 100. Triporigins and trip destinations may be stored in the memory storage device116. In addition, routes to trip destinations may be stored in thememory storage device 116. As set forth in detail below, markeddiversions that are calculated by the navigation system 100 may also bestored in the memory storage device 116. Alternatively, the memorystorage device 116 may be associated with the navigation server 114.Associated data may be stored in connection with the navigation server114. Data may then be transferred to the navigation control unit 102using the wireless access device 112.

The navigation system 100 may also include a traffic event notificationdevice 118 that receives incoming notifications of traffic events. Thetraffic event notification device 118 may be connected with thenavigation control unit 102. The navigation control unit 102 may usesignals received from the traffic event notification device 118 todynamically route a vehicle in which the navigation system 100 isinstalled around traffic obstacles or events that may be in front of thedriver. Several different types of traffic event notification devices118 may be used by the navigation system 100.

In FIG. 2, the navigation control unit 102 may include a digital mapdatabase 108. The digital map database 108 contains map information in apredefined format that is capable of being read and used by thenavigation control unit 102 or the navigation server 114. The navigationcontrol unit 102 may use the map information for map related functionssuch as identifying and providing locations, address information, roadclassifications, road restrictions, road names, traffic regulations,travel information and so forth. The digital map database 108 may alsocontain a road network map of various geographic locations. The roadnetwork map may include nodes and segments that make up roads that areused by vehicles to travel to predetermined destinations. Nodes as usedherein may be defined as road intersections or where exits exist fromroads and segments are defined as sections of roads that exist betweennodes.

A positioning module 200 may be included on the navigation control unit102 that determines the geographic location and trajectory of thevehicle using the positioning device 110. As set forth above, severaldifferent positioning devices 110 may be used to determine thetrajectory and geographic position of the vehicle. The positioningmodule 200 may include an integration algorithm that takes outputsignals generated by various positioning devices 110 to determine theprecise geographic location and trajectory of the vehicle.

Once the geographic location and trajectory of the vehicle have beendetermined, a map matching module 202 may be used to match thegeographic location of the vehicle with a position on the road networkmap generated with the digital map database 108. A map-matchingalgorithm of the map matching module 202 may be used to place thevehicle in the proper location on the road network map. The map matchingmodule 202 is capable of correlating the vehicle position and trajectoryfrom the positioning module 200 to the road network map by comparing thevehicle trajectory and location with the map data present in the digitalmap database 108.

The navigation control unit 102 may also include a route calculationmodule 204. Route calculation is the process of planning a route priorto or during a trip to a predetermined destination. The routecalculation module 204 may use a shortest path algorithm to determine arecommended route from a trip origin to a trip destination. In theserver-based solution, the navigation server 114 may also include theroute calculation module 204. Different shortest path algorithms andvariations of shortest path algorithms may be used in the navigationsystem 100 as well as other types of algorithms.

The shortest path algorithm may also include a route optimization modulethat uses planning criteria to plan the route. The quality of any givenroute may depend on many factors and selection criteria such asdistance, road types, speed limits, location, number of stops, number ofturns and traffic information. The route selection criteria can eitherbe fixed at manufacture or may be implemented through a user interfacemodule 206. Determination of the best route uses the selection criteriaand a digital road network map retrieved from the digital map database108 to minimize distance and travel time. The navigation system 100 mayalso allow drivers to compute routes interactively by opening or closingnodes or segments in the road network map.

In FIG. 2, the navigation control unit 102 may also include a userinterface module 206. The user interface module 206 may generate agraphical user interface (“GUI”) on the display 104. The user interfacemodule 206 may also allow a user of the navigation system 100 tointeract with the vehicle navigation system 100 and enter inputs intothe navigation system 100. The user interface module 206 may receiveinputs from the display 104 if it is a touch-screen display. The userinput device 106 may also be used to enter inputs into the userinterface module 206. The user inputs may be provided to the routecalculation module 204, which may then calculate a route to adestination that is input by the driver.

The navigation control unit 102 may also includes a route guidancemodule 208. The route guidance module 208 may guide the driver along theroute generated by the route calculation module 204. The route guidancemodule 208 may use the positioning module 200, the digital map database108 and the map matching module 202 to guide the driver along the routeto their respective destination. The route guidance module 208 may alsoallow the user interface module 206 to generate a road network map GUIon the display 104 that illustrates where the vehicle is located on theroad network map and the direction the vehicle is traveling.

As illustrated, the navigation control unit 102 may also include anadaptive routing module 210. As set forth above, the route calculationmodule 204 is used to calculate the shortest route between a trip originand a trip destination. The adaptive routing module 210 may allow theuser or driver of the vehicle to adjust the route that has beencalculated by the route calculation module 204 based on userpreferences. The adaptive routing module 210 may allow the user to openor close nodes and segments in the road network map. Once the nodes orsegments have been opened or closed, the adaptive routing module 210 maypass this information to the route calculation module 204, which thenre-calculates a new route to the predetermined destination based on theuser preferences. The adaptive routing module 210 may also determine thenew route of the vehicle.

The navigation system 100 illustrated in FIG. 2 may also include atraffic event simulation module 212. The traffic event simulation module212 may simulate traffic events along routes that are calculated todestinations. The navigation system 100 may also include a diversionmodule 214 that is used to calculate marked diversions around trafficevents that are simulated along the route by the traffic eventsimulation module 212. The diversion module 214 may then store themarked diversions in a memory location of the memory storage device 116.If a traffic event occurs along a route at a location, the diversionmodule 214 may then be used to retrieve a marked diversion to avoid thetraffic event. In FIG. 3, an illustrative road network map 300 thatmaybe contained in the digital map database 108 for a given geographicarea. As depicted, the road network map 300 may include a plurality offunctional road classes 302-310 that make up the road network map 300.For illustrative purposes only, functional road class 302 may compriseinterstates. Functional road class 304 may consist of highways orarterial expressways and functional road class 306 may consist of citystreets. In addition, functional road class 308 may consist of ruralroads and functional road class 310 may consist of neighborhood streets.It is important to note that road network map 300 is for illustrativepurposes only and that other types of functional road classes may existin other road network maps. As such, the road network map 300 depictedin FIG. 3 as well as the functional road classes depicted therein shouldnot be viewed as a limitation of the invention set forth in thisdescription and should be viewed only in an illustrative sense.

The navigation system 100 may be used by a driver to plan a route thatmay include a trip origin 312 and a trip destination 314. The routecalculation module 204 of the navigation system 100 may be used to planthe route to the trip destination 314. The route calculation module 204may calculate the route to take the shortest amount of time or distancetraveled along the route. For illustrative purposes only, in FIG. 3 theroute that may have been calculated by the route calculation module 204may consist of rural road 316, interstate 318 and rural road 320. Thereason for this route being calculated in this example is that thedriver of the vehicle will spend a majority of time and travel distanceon interstate 318, which will allow the driver to travel faster thanusing other roads set forth in FIG. 3, thereby providing the driver withthe shortest travel time to reach the trip destination 314.

In FIG. 4, another illustrative road network map 400 is set forth thatresembles the road network map 300 set forth in FIG. 3, however, thefunctional road classes 302-310 have been removed to gain a betterunderstanding of the invention. As set forth above, the navigationsystem 100 includes a traffic event simulation module 212 that isoperable to simulate traffic events on a predetermined number of roadsegments along the route to the trip destination 314. The traffic eventsmay be simulated on every road segment on major roads along the routeand road segments may be located where two roads intersect or alongexits off the major road. As an example, the traffic event simulationmodule 212 may simulate traffic events at road segments 402-412.

In FIG. 4, the diversion module 214 creates a plurality of markeddiversions 414 that avoid traffic events that may occur in road segmentsalong the normal route that was calculated by the route calculationmodule 204. Roads that do not contain marked diversions are designatedas non-marked diversions 416 in FIG. 4. As such, the diversion module214 may calculate alternative routes that will avoid any traffic eventsthat may occur along the route to the trip destination 314. Thediversion module 214 may use any functional road class to create themarked diversions 414, whereas the traditional route calculation module204 would likely not use smaller roads to plan a route. The markeddiversions 414 may be calculated to begin at a predetermined distancebefore the traffic event and end at a second predetermined distancebehind the traffic event.

After the diversion module 214 calculates the marked diversions 414 theymay be stored in a memory location of the memory storage device 116. Assuch, if a traffic event occurs while the driver is traveling to thetrip destination 314 along the normal route, the route calculationmodule 204 may avoid searching every road near the traffic event andwill only look for an alternative route using roads that have alreadybeen designated as marked diversions 414. The navigation system 100thereby saves time avoiding traffic events by concentrating on markedroads while ignoring roads that do not contain the attribute of a markeddiversion 414.

In FIG. 4, a congestion area 418 is set forth as an example of a trafficevent that may occur along the route to the trip destination 314.Instead of searching every road on the road network map 400, the routecalculation module 204 will only search for an alternative route thatavoids the traffic event on roads that have previously been designatedwith a marked diversion 414. In this example, the route calculationmodule 204 may designate city street 420 for the driver of the vehicleto use to avoid the traffic event. However, other alternative functionalroad classes such as roads, streets, interstates and expressways may beused as an alternative route to avoid the traffic event. The routecalculation module 204 may use an alternative route that provides thefastest travel time and/or the minimal travel distance. The routecalculation module 204 may also calculate the alternative route to end apredetermined distance after the traffic event and return the driver tothe original route.

In FIG. 5, illustrative process steps performed by the navigationcontrol unit 102 are illustrated. At step 500, the route calculationmodule 204 may calculate a route to a trip destination based on userinputs received from the display 104 or the user input device 106. Theroute calculation module 204 uses the digital map database 108 and themap matching module 202 to determine the route to the destination. Inaddition, road attributes may also be taken into consideration whencalculating the route and typically the route calculation module 204 maychoose roads that will get the driver to the destination in the shortestamount of time possible. This will typically involve the use of majorroadways or interstates if available along the route and smallerroadways will be ignored or not used. In addition, the driver may alsobe provided with route options that allow the driver to avoid usingroutes that may have tolls, tunnels or special motorways.

After the route to the destination has been calculated, at step 502 thetraffic event simulation module 212 may be called upon to simulate aplurality of traffic events that might occur along the route. Thetraffic event simulation module 212 may simulate traffic events bydividing the route into a plurality of road segments and simulatingtraffic events along each of these road segments or a select number ofroad segments. Road segments may be comprised of places along the routewhere two roadways intersect or where there is an exit from a roadwayonto another roadway. In addition, the traffic event simulation module212 may simulate combinations of traffic events by blocking multipleroad segments along the route.

At step 504, the diversion module 214 may be used to calculate at leastone marked diversion for each traffic event that is simulated along theroute. The marked diversions consist of alternative roads that may beused by the driver to avoid the traffic events that may occur along theroute. A plurality of marked diversions may be calculated for eachtraffic event that occurs at each road segment along the route. Inaddition, the diversion module 214 may ignore functional road classeswhen calculating the marked diversions thereby allowing the driver touse smaller roads that otherwise would not be considered for use by theroute calculation module 204. At step 506, the diversion module 214 maystore all of the marked diversions that have been calculated in apredetermined memory location of the storage device 116. At step 507,the vehicle navigation system 100 monitors to determine if a trafficevent occurs, if a traffic event occurs the vehicle navigation system100 proceeds to step 508 and if it does not occur the vehicle navigationsystem guides the driver along the route.

Once the driver begins the trip to the destination, the traffic eventnotification device 118 may provide the navigation control unit 102 witha notification of a traffic event along the route. If this occurs, atstep 508 the navigation control unit 102 will use the route calculationmodule 204 to determine a route that avoids the traffic event. Todetermine the route that will avoid the traffic event, the routecalculation module 204 will only search the marked diversions that havebeen stored in the memory location of the storage device 116. Thenotification may contain information that designates a road segment thatis affected by the traffic event and therefore, the route calculationmodule 204 may only need to search the marked diversions that areassociated with that particular road segment. As such, time andprocessing power is saved because the navigation system 100 does nothave to search all roads along the route to determine a route thatavoids the traffic event.

At step 510, the route guidance module 208 may be used to guide thedriver of the vehicle along the alternate route that has been determinedby the route calculation module 204 that avoids the traffic event basedon the marked diversions. The marked diversion may lead the driver tothe trip destination or it may place the driver back on the originalroute at a predetermined distance beyond the traffic event. Thediversion module 214 may calculate the marked diversions to begin at alocation in front of the traffic event and end at a location beyond thetraffic event on or off of the original route to the destination.

The navigation server 114 may alternatively calculate and store themarked diversions in other examples of the invention. The wirelessaccess device 112 may be used by the navigation server 114 to transmitdata to the vehicle navigation system 100. As set forth above, thisrepresents a server-based solution for the vehicle navigation system100. Each of the software modules described above may be located on thenavigation server 114 and may perform each of the tasks set forth above.The positioning device 110 of the vehicle navigation system 100 maytransmit geographic coordinates of the vehicle to the navigation server114 as well as data indicating the trip destination. The navigationserver 114 may also include a traffic event notification device thatinforms the navigation server 114 of traffic events along the route. Thenavigation server 114 may then use the marked diversions to guide thedriver around traffic events and on to the ultimate trip destination.

In another example of the invention, the digital map database 108 maycontain a digital map of a road network for various geographic locationsas well as other types of data. In particular, the digital map database108 may contain information about the functional road classes of variousroadways or roads that are contained within the road network map. Thefunctional road classes may designate roads in many different categoriessuch as, for example, interstates, motorways, toll-ways, city streets,urban arteries, rural streets, neighborhood streets and so forth.

The digital map database 108 may be generated based on geographiccoordinates and a plurality of roadways that are positioned with respectto the geographic coordinates. The process of converting a map into adigital map database may be referred to as a map conversion. A map ofany given area will contain a plurality of roadways that may be used bya driver to travel to a destination. The roadways may be classified inone of the functional road classes set forth above or any other type offunctional road class. Other data such as speed limits and a lane countmay also be stored in the digital map database.

During map conversion a plurality of obstacles or traffic events may besimulated between respective nodes or segments of the roadways that areincluded in the road network map contained in the digital map database108. Although not specifically illustrated, a traffic event simulationmodule may be used to simulate the traffic events that may occur on asegment of the roadway. In addition, the traffic event simulation modulemay be used to simulate traffic events along multiple segments of theroadway.

Once the traffic events are simulated, at least one marked diversion maybe generated for each segment of roadway that is contained in the roadnetwork map or for multiple segments of the roadway. As such, aplurality of marked diversions may be generated that are associated witha respective segment of the roadway or multiple segments of the roadway.The marked diversions may be stored in the digital map database 108 inaddition with the other data that is stored in the digital map database108.

A route guidance module 208 located on the vehicle navigation system 100may be used to guide the driver of the vehicle along the route that hasbeen calculated by the route calculation module 204. If the vehiclenavigation system 100 receives information indicating that a trafficevent has occurred along one or more of the road segments of the route,the route calculation module 204 may lookup the marked diversion that isassociated with that particular road segment and guide the driver alongan alternative route that avoids the traffic event.

In this example, the marked diversions are calculated and stored in thedigital map database 108. The marked diversions are determined ahead oftime by a traffic event simulation module 212 so that the vehiclenavigation system 100 does not have to calculate diversions aroundtraffic events as they occur while the user is traveling to thedestination. If the traffic event notification device 118 notifies thenavigation control unit 102 of a traffic event along a road segment thatis included in the route, the diversion module 214 may locate analternate route that avoids the traffic event by looking up a markeddiversion that is already contained in the digital map database 108.

The vehicle navigation system 100 may include a route calculation module204 that is operable to calculate a route to a trip destination that isinput by a user. A traffic event notification device 118 may beconnected with the navigation control unit 102 that may generate atraffic event notification message that contains an indication of atraffic event that may have occurred on a respective road segment. Adiversion module 214 may be included for retrieving an alternative routethat avoids the traffic event from a list of marked diversions containedin the digital map database that is associated with the respective roadsegment where the traffic event has occurred. The diversion module 214may be a software component of the route planning module 204 or aseparate software module.

In yet another example, a method of creating a digital map database 108for use in a vehicle navigation system 100 is disclosed that includesmarked diversions that may be used to avoid traffic events. A roadnetwork map is created that includes a plurality of road segments. Theroad network map may be stored in a digital map file. A traffic eventmay be simulated along each respective road segment of the road networkmap using a traffic event simulation module 212. At least one markeddiversion may then be calculated that avoids the traffic event for eachroad segment. The marked diversions that are calculated may then bestored in the digital map database 108 for use by the vehicle navigationsystem 100 if a traffic event is experienced along a route that is beingtraveled by a vehicle.

As described above, the invention allows the vehicle navigation system100 to use marked diversions that are calculated to avoid traffic eventsthat may occur along road segments. In some examples of the invention,the marked diversions are calculated during the map conversion processwhen the digital map database 108 is being created for use by thevehicle navigation system 100. This allows the vehicle navigation system100 to conserve processing power during operation because thealternative routes that avoid the traffic events have already beencalculated and stored during the map conversion process. In addition,this allows the use of small functional road classes when calculatingalternative routes that avoid traffic events, which would typically notbe used on long haul trips.

While various embodiments of the invention have been described, it willbe apparent to those of ordinary skill in the art that many moreembodiments and implementations are possible that are within the scopeof the invention. Accordingly, the invention is not to be restrictedexcept in light of the attached claims and their equivalents.

1. A navigation system for a vehicle comprising: a digital map databasecontaining a road network map that is divided into a plurality of roadsegments; a route planning module to calculate a route to a tripdestination using the road network map; a traffic event simulationmodule to simulate at least one traffic event in at least one roadsegment; a traffic event notification device operable to receive atraffic event notification message indicating a traffic event hasoccurred along a respective road segment of the route; and a diversionmodule to retrieve an alternative route that avoids the traffic event bylocating at least one marked diversion contained in the digital mapdatabase that is associated with the respective road segment where thetraffic event has occurred.
 2. The navigation system of claim 1 furthercomprising a route guidance module for guiding the vehicle along theroute and the alternative route.
 3. The navigation system of claim 1where the respective road segment is located between at least twointersections with other road segments.
 4. The navigation system ofclaim 1 where the at least one marked diversion is calculated to beginat a first predetermined distance before the traffic event and end asecond predetermined distance after the traffic event.
 5. The navigationsystem of claim 1 where the at least one marked diversion is calculatedto use a small functional road class to avoid the traffic event.
 6. Thenavigation system of claim 5 where the small functional road class islocated by searching a road class attribute found in the digital mapdatabase.
 7. A method of creating a digital map database for use in anavigation system comprising: converting a road network map thatincludes a plurality of road segments into a digital map file;simulating a traffic event along at least one road segment of the roadnetwork map; calculating at least one marked diversion that avoids thetraffic event for each road segment; and storing the marked diversion inthe digital map file.
 8. The method of claim 7 where converting the roadnetwork map comprises identifying the road segments as between at leasttwo intersections with other road segments.
 9. The method of claim 7where calculating the at least one marked diversion comprisescalculating the at least one marked diversion to begin a firstpredetermined distance in front of the traffic event and end a secondpredetermined distance behind the traffic event.
 10. The method of claim7 where the marked diversion is calculated to use a small functionalroad class to avoid the traffic event.
 11. The method of claim 10 wherethe small functional road class is located by searching a road classattribute associated with each of the road segments in the road networkmap.
 12. In a vehicle navigation system, including a computer, fordetermining and outputting an alternate route to a destination, acomputer program product for creating a digital map database for usewith the vehicle navigation system comprising: a computer usable mediumhaving computer readable program code embodied in said medium foravoiding traffic events, said computer program product having: computerreadable program code to generate a road network map including aplurality of road segments; computer readable program code to simulate atraffic event in at least one of the road segments contained in the roadnetwork map; computer readable program code to calculate at least onemarked diversion that avoids the traffic event; and computer readableprogram code to store the at least one marked diversion in a digital mapdatabase.
 13. The computer program product of claim 12 where each of theroad segments are located between at least two intersections of the roadsegments.
 14. The computer program product of claim 12 where the atleast one marked diversion is calculated based on a shortest travel timefactor.
 15. The computer program product of claim 12 where the at leastone marked diversion is calculated using a small functional road classto avoid the traffic event.
 16. The computer program product of claim 12where the at least one marked diversion is calculated to begin a firstpredetermined distance before the traffic event and end a secondpredetermined distance after the traffic event.
 17. The computer programproduct of claim 12 where the traffic event is simulated on consecutiveroad segments.
 18. A map conversion system for creating a digital mapdatabase comprising: means for generating a road network map including aplurality of road segments; means for simulating a traffic event in atleast one road segment contained in the road network map; means forcalculating at least one marked diversion that avoids the traffic eventand means for storing the at least one marked diversion in a digital mapdatabase.
 19. The map conversion system of claim 18 where the at leastone road segment is located between two intersections of other roadsegments.
 20. The map system of claim 18 where the at least one markeddiversion is calculated to avoid the traffic event using a shortestdistance factor.
 21. The map conversion system of claim 18 where the atleast one marked diversion is calculated to begin a first predetermineddistance before the traffic event and end a second predetermineddistance after the traffic event.
 22. The map conversion system of claim18 where the at least one marked diversion is calculated to use a smallfunctional road class to avoid the traffic event.
 23. The map conversionsystem of claim 22 where the small functional road class is determinedas a function of a road class attribute.
 24. A navigation systemcomprising: a route planning module configured to calculate a route to atrip destination using a road network map that includes a plurality ofroad segments; a simulation module configured to simulate a trafficevent in at least one of each of a plurality of road segments along theroute; a diversion module configured to calculate at least one markeddiversion that avoids the traffic event in each of the road segments;and a memory device to store the at least one marked diversion for useif a respective traffic event occurs along the route at one of therespective road segments.
 25. The navigation system of claim 24 whereeach of the road segments are located between at least two intersectionswith other road segments.
 26. The navigation system of claim 24 wherethe at least one marked diversion is calculated to begin a firstpredetermined distance before the traffic event and end a secondpredetermined distance after the traffic event.
 27. The navigationsystem of claim 24 where the marked diversion is calculated to use asmall functional road class to avoid the traffic event.
 28. Thenavigation system of claim 27 where the small functional road class islocated by searching a road class attribute found in a digital mapdatabase.
 29. The navigation system of claim 24 where the at least onemarked diversion is calculated to end a predetermined distance after thetraffic event.
 30. The navigation system of claim 24 where the at leastone marked diversion is calculated to avoid consecutive traffic eventsalong consecutive road segments along the route.
 31. The navigationsystem of claim 24 further comprising a traffic message receiving devicefor receiving a notification of the traffic event.
 32. A method ofavoiding traffic events with a navigation system comprising: creating aroute to a predetermined destination on a road network map; dividing theroute on the road network map into a plurality of road segments;simulating a traffic event on each road segment along the route;calculating at least one marked diversion around each respectivesimulated traffic event; storing the at least one marked diversion in amemory location; and creating an alternative route with the at least onemarked diversion when an actual traffic event occurs on a respectiveroad segment.
 33. The method of claim 32 where functional road classesare ignored when calculating the at least one marked diversion.
 34. Themethod of claim 32 where dividing the route comprises locating each ofthe road segments between at least two road intersections in the roadnetwork map.
 35. The method of claim 32 where the traffic events aresimulated on consecutive road segments.
 36. The method of claim 32 wherethe at least one marked diversion used to create the alternative routeis selected based on a shortest time factor.
 37. The method of claim 32where the at least one marked diversion used to create the alternativeroute is selected based on a shortest distance factor.
 38. The method ofclaim 32 further comprising receiving a traffic event notification froma traffic event notification device.
 39. The method of claim 32 wherethe at least one marked diversion is calculated to begin a firstpredetermined distance before the traffic event and end a secondpredetermined distance after the traffic event.
 40. The method of claim32 where the at least one marked diversion is calculated to use a smallfunctional road class to avoid the traffic event.
 41. The method ofclaim 40 where the small functional road class is determined bysearching a road class attribute found in a digital map database.
 42. Ina vehicle navigation system, including a computer, for determining amarked diversion to avoid a traffic delay, a computer program productfor use with the vehicle navigation system comprising: a computer usablemedium having computer readable program code embodied in said medium foravoiding traffic events, said computer program product having: computerreadable program code to calculate a route to a destination using adigital road network map that includes a plurality of road segments;computer readable program code to simulate a plurality of traffic eventsin the road segments along the route; computer readable program code tocalculate a plurality of marked diversions around the traffic eventsusing alternative routes determined from the digital road network map;and computer readable program code to store the marked diversions in amemory location.
 43. The computer program product of claim 42 furthercomprising computer readable program code to use at least one of themarked diversions if a traffic event is experienced along a respectiveroad segment of the route.
 44. The computer program product of claim 43where at least one of the marked diversions used is selected based on ashortest travel time factor.
 45. The computer program product of claim42 further comprising computer readable program code to determine ashortest marked diversion along the route, where the shortest markeddiversion is used if a traffic event is experienced in a road segmentalong the route.
 46. The computer program product of claim 42 where atleast one of the marked diversions is calculated using a smallfunctional road class to avoid the traffic event.
 47. The computerprogram product of claim 42 where at least one of the marked diversionsis calculated to begin a first predetermined distance before the trafficevent and end a second predetermined distance after the traffic event.48. The computer program product of claim 42 where the traffic event issimulated on consecutive road segments.
 49. The computer program productof claim 42 further comprising computer readable program code to receivea traffic event notification from a traffic event notification devicethat sets forth the traffic event.
 50. A navigation system, comprising:means for determining a route to a destination using a road network maphaving a plurality of road segments; means for simulating at least onetraffic event on at least one respective road segment along the route;means for calculating at least one marked diversion that avoids the atleast one traffic event along the route; and means for storing themarked diversion in a memory location.
 51. The navigation system ofclaim 50 further comprising means for retrieving a respective markeddiversion if a respective traffic event is experienced along the route.52. The navigation system of claim 51 further comprising means forguiding a user along the respective marked diversion if a respectivetraffic event is experienced along the route.
 53. The navigation systemof claim 50 where the at least one marked diversion is calculated toavoid the at least one traffic event using a shortest distance factor.54. The navigation system of claim 50 where each of the road segmentsare located between at least two intersections of the road segments. 55.The navigation system of claim 50 where the at least one markeddiversion is calculated to begin a first predetermined distance beforethe traffic event and end a second predetermined distance after thetraffic event.
 56. The navigation system of claim 50 where the at leastone marked diversion is calculated to use a small functional road classto avoid the traffic event.
 57. The navigation system of claim 56 wherethe small functional road class is determined as a function of a roadclass attribute found in a digital map database.
 58. The navigationsystem of claim 50 where the at least one marked diversion is calculatedto end at a predetermined distance beyond the traffic event along theroute.
 59. The navigation system of claim 50 where the at least onetraffic event is a plurality of traffic events and the at least onemarked diversion is calculated to avoid consecutive traffic events alongmore than one of the road segments along the route.
 60. The navigationsystem of claim 50 further comprising a traffic event notificationdevice for receiving a notification of the at least one traffic event.61. A method of avoiding traffic events with a navigation systemcomprising the steps of: creating a route to a predetermined destinationon a road network map that includes a plurality of road segments;simulating a traffic event on each road segment along the route;calculating at least one marked diversion around each respective trafficevent for each road segment; storing each marked diversion in a memorylocation that is associated with the road segment; receiving anotification of a respective traffic event in a predetermined roadsegment along the route from a traffic event notification device; andretrieving a respective marked diversion from the memory location foruse in avoiding the traffic event set forth in the notification.